// Author: wsfuyibing <682805@qq.com>
// Date: 2025-04-25

package lib

import (
	"server/app/lib/arcade"
	"server/app/lib/arcade_balance"
	"server/app/lib/encryption"
	"server/app/lib/maps"
	"server/app/lib/order"
	"server/app/lib/uploader"
	"server/app/lib/user_balance"
	"server/app/lib/weixin"
	"sync"
)

var (
	once = new(sync.Once)

	Arcade        arcade.Manager
	ArcadeBalance arcade_balance.Manager
	Encryption    encryption.Manager
	Maps          maps.Manager
	Order         order.Manager
	Uploader      uploader.Manager
	UserBalance   user_balance.Manager
	Weixin        weixin.Manager
)

func init() {
	once.Do(func() {
		Arcade = arcade.New()
		ArcadeBalance = arcade_balance.New()
		Encryption = encryption.New()
		Maps = maps.New()
		Order = order.New()
		Uploader = uploader.New()
		UserBalance = user_balance.New()
		Weixin = weixin.New()
	})
}
